#ifndef CONSTANTES
#define CONSTANTES

#include <math.h>

#define NB_DEGRES            1

#define _N                   155 // Nombre de Variables
#define _K                   93 // Nombre de Checks   
#define _M                   465 // Nombre de Messages 

#define NOEUD   _N
#define MESSAGE _M

#define NmoinsK     (_N-_K)

#define DEG_1                5

#define DEG_1_COMPUTATIONS   93

#define NB_ITERATIONS        20
#define NB_BITS_VARIABLES    8 //8
#define NB_BITS_MESSAGES     6 //6
#define SAT_POS_VAR  ( (0x0001<<(NB_BITS_VARIABLES-1))-1)
#define SAT_NEG_VAR  (-(0x0001<<(NB_BITS_VARIABLES-1))+1)
#define SAT_POS_MSG  ( (0x0001<<(NB_BITS_MESSAGES -1))-1)
#define SAT_NEG_MSG  (-(0x0001<<(NB_BITS_MESSAGES -1))+1)

#endif


#ifndef _PosNoeudsVariable_
#define _PosNoeudsVariable_
const unsigned short PosNoeudsVariable[465] ={
/* msg =      0, deg =  5 */     30,     60,     89,    116,    139, 
/* msg =      1, deg =  5 */      0,     61,     90,    117,    140, 
/* msg =      2, deg =  5 */      1,     31,     91,    118,    141, 
/* msg =      3, deg =  5 */      2,     32,     92,    119,    142, 
/* msg =      4, deg =  5 */      3,     33,     62,    120,    143, 
/* msg =      5, deg =  5 */      4,     34,     63,    121,    144, 
/* msg =      6, deg =  5 */      5,     35,     64,    122,    145, 
/* msg =      7, deg =  5 */      6,     36,     65,    123,    146, 
/* msg =      8, deg =  5 */      7,     37,     66,     93,    147, 
/* msg =      9, deg =  5 */      8,     38,     67,     94,    148, 
/* msg =     10, deg =  5 */      9,     39,     68,     95,    149, 
/* msg =     11, deg =  5 */     10,     40,     69,     96,    150, 
/* msg =     12, deg =  5 */     11,     41,     70,     97,    151, 
/* msg =     13, deg =  5 */     12,     42,     71,     98,    152, 
/* msg =     14, deg =  5 */     13,     43,     72,     99,    153, 
/* msg =     15, deg =  5 */     14,     44,     73,    100,    154, 
/* msg =     16, deg =  5 */     15,     45,     74,    101,    124, 
/* msg =     17, deg =  5 */     16,     46,     75,    102,    125, 
/* msg =     18, deg =  5 */     17,     47,     76,    103,    126, 
/* msg =     19, deg =  5 */     18,     48,     77,    104,    127, 
/* msg =     20, deg =  5 */     19,     49,     78,    105,    128, 
/* msg =     21, deg =  5 */     20,     50,     79,    106,    129, 
/* msg =     22, deg =  5 */     21,     51,     80,    107,    130, 
/* msg =     23, deg =  5 */     22,     52,     81,    108,    131, 
/* msg =     24, deg =  5 */     23,     53,     82,    109,    132, 
/* msg =     25, deg =  5 */     24,     54,     83,    110,    133, 
/* msg =     26, deg =  5 */     25,     55,     84,    111,    134, 
/* msg =     27, deg =  5 */     26,     56,     85,    112,    135, 
/* msg =     28, deg =  5 */     27,     57,     86,    113,    136, 
/* msg =     29, deg =  5 */     28,     58,     87,    114,    137, 
/* msg =     30, deg =  5 */     29,     59,     88,    115,    138, 
/* msg =     31, deg =  5 */     26,     52,     73,    115,    137, 
/* msg =     32, deg =  5 */     27,     53,     74,    116,    138, 
/* msg =     33, deg =  5 */     28,     54,     75,    117,    139, 
/* msg =     34, deg =  5 */     29,     55,     76,    118,    140, 
/* msg =     35, deg =  5 */     30,     56,     77,    119,    141, 
/* msg =     36, deg =  5 */      0,     57,     78,    120,    142, 
/* msg =     37, deg =  5 */      1,     58,     79,    121,    143, 
/* msg =     38, deg =  5 */      2,     59,     80,    122,    144, 
/* msg =     39, deg =  5 */      3,     60,     81,    123,    145, 
/* msg =     40, deg =  5 */      4,     61,     82,     93,    146, 
/* msg =     41, deg =  5 */      5,     31,     83,     94,    147, 
/* msg =     42, deg =  5 */      6,     32,     84,     95,    148, 
/* msg =     43, deg =  5 */      7,     33,     85,     96,    149, 
/* msg =     44, deg =  5 */      8,     34,     86,     97,    150, 
/* msg =     45, deg =  5 */      9,     35,     87,     98,    151, 
/* msg =     46, deg =  5 */     10,     36,     88,     99,    152, 
/* msg =     47, deg =  5 */     11,     37,     89,    100,    153, 
/* msg =     48, deg =  5 */     12,     38,     90,    101,    154, 
/* msg =     49, deg =  5 */     13,     39,     91,    102,    124, 
/* msg =     50, deg =  5 */     14,     40,     92,    103,    125, 
/* msg =     51, deg =  5 */     15,     41,     62,    104,    126, 
/* msg =     52, deg =  5 */     16,     42,     63,    105,    127, 
/* msg =     53, deg =  5 */     17,     43,     64,    106,    128, 
/* msg =     54, deg =  5 */     18,     44,     65,    107,    129, 
/* msg =     55, deg =  5 */     19,     45,     66,    108,    130, 
/* msg =     56, deg =  5 */     20,     46,     67,    109,    131, 
/* msg =     57, deg =  5 */     21,     47,     68,    110,    132, 
/* msg =     58, deg =  5 */     22,     48,     69,    111,    133, 
/* msg =     59, deg =  5 */     23,     49,     70,    112,    134, 
/* msg =     60, deg =  5 */     24,     50,     71,    113,    135, 
/* msg =     61, deg =  5 */     25,     51,     72,    114,    136, 
/* msg =     62, deg =  5 */      6,     43,     86,    110,    127, 
/* msg =     63, deg =  5 */      7,     44,     87,    111,    128, 
/* msg =     64, deg =  5 */      8,     45,     88,    112,    129, 
/* msg =     65, deg =  5 */      9,     46,     89,    113,    130, 
/* msg =     66, deg =  5 */     10,     47,     90,    114,    131, 
/* msg =     67, deg =  5 */     11,     48,     91,    115,    132, 
/* msg =     68, deg =  5 */     12,     49,     92,    116,    133, 
/* msg =     69, deg =  5 */     13,     50,     62,    117,    134, 
/* msg =     70, deg =  5 */     14,     51,     63,    118,    135, 
/* msg =     71, deg =  5 */     15,     52,     64,    119,    136, 
/* msg =     72, deg =  5 */     16,     53,     65,    120,    137, 
/* msg =     73, deg =  5 */     17,     54,     66,    121,    138, 
/* msg =     74, deg =  5 */     18,     55,     67,    122,    139, 
/* msg =     75, deg =  5 */     19,     56,     68,    123,    140, 
/* msg =     76, deg =  5 */     20,     57,     69,     93,    141, 
/* msg =     77, deg =  5 */     21,     58,     70,     94,    142, 
/* msg =     78, deg =  5 */     22,     59,     71,     95,    143, 
/* msg =     79, deg =  5 */     23,     60,     72,     96,    144, 
/* msg =     80, deg =  5 */     24,     61,     73,     97,    145, 
/* msg =     81, deg =  5 */     25,     31,     74,     98,    146, 
/* msg =     82, deg =  5 */     26,     32,     75,     99,    147, 
/* msg =     83, deg =  5 */     27,     33,     76,    100,    148, 
/* msg =     84, deg =  5 */     28,     34,     77,    101,    149, 
/* msg =     85, deg =  5 */     29,     35,     78,    102,    150, 
/* msg =     86, deg =  5 */     30,     36,     79,    103,    151, 
/* msg =     87, deg =  5 */      0,     37,     80,    104,    152, 
/* msg =     88, deg =  5 */      1,     38,     81,    105,    153, 
/* msg =     89, deg =  5 */      2,     39,     82,    106,    154, 
/* msg =     90, deg =  5 */      3,     40,     83,    107,    124, 
/* msg =     91, deg =  5 */      4,     41,     84,    108,    125, 
/* msg =     92, deg =  5 */      5,     42,     85,    109,    126
};
#endif

